位於某開發辦公室一隅……
產品經理 Moon 盯著一份洋洋灑灑的 SPEC(規格文件),臉色比咖啡還黑。
Moon:「黛西,這份 SPEC 我昨天已經確認了幾十次,功能點多達 40 個,但下個 Sprint 只有兩週,我光要決定優先級就很燒腦了!而且,要把這些功能點拆成前後端獨立的開發卡片(User Story),還得寫清楚驗收標準(Acceptance Criteria),確保跨職能團隊(cross-functional team)的夥伴能無縫接軌……這工作量,我感覺我好多時間都在寫卡片了!」
黛西:(輕輕拍了拍 Moon 的肩膀) 「我知道,將一份厚厚的規格書,轉化為開發團隊能立即執行的、且架構清晰的任務增量(Increment),確實是 PM 很耗費心力的環節。這不僅是體力活,更是腦力活,因為這必須同時考慮用戶價值、技術架構、團隊負荷,還要能排定優先順序。現在, AI Agent 也可以成為我們的助攻,它可以將我們提供的 SPEC 內容,自動替你排好功能的優先級,甚至幫你把前後端任務卡片需要的內容列出來,並且生成清楚的驗收標準。」
Moon:「哇!怎麼辦到的?」
黛西:「我們就一起來看看吧!」
黛西帶你回到現場。
我們之前聊了很多關於 AI Agent 如何從設計圖生成程式碼、如何優化 SPEC 文案,這些工具都是在「加速」產品開發流程,但產品開發最核心的「藝術」,還是在於如何有效地規劃並拆分工作 。
Moon 的煩惱,是所有實踐 Scrum 團隊的痛點。將一份 SPEC,轉化為**「可執行、可驗收」** 的敏捷卡片(User Story),需要對市場、對團隊和各種情況有一定的了解,也需要專業判斷力和經驗。
現在,我們不再需要完全仰賴人力來進行繁瑣的拆分和撰寫了!讓 AI Agent 成為你的「卡片切分師」,它能初步提供我們建議,再去更新我們的排序,且協助我們把 User Story 和 Acceptance Criteria 初稿產出,讓我們能夠讓卡片內容更快速的生成。
這邊我為以之前的購物網站 APP 作為延伸例子,我會在 VS Code 裡面,透過提供 Gemini Code Asist 和 Github Copilot 我之前產出的 SPEC ,來產生初步的卡片內容。
就讓我們一起來看看吧!
一、與 Gemini Code Asist 對話
下 Prompt:幫我針對最新的 SPEC內容,幫我做以下幾件事情 :(1)切分開發時的功能優先序;(2)將功能切分為前後端開發卡片,並針對每個卡片,列出 SPEC內容、User story和該卡片的驗收標準。
一樣看看它提供的內容有沒有想要修改的,可以透過對話來調整。
這時他產生的初稿會是這樣子:購物 APP 開發計畫與任務卡 初 - Ge。
二、與 Github Copilot 對話
下 Prompt:幫我針對最新的 SPEC內容,幫我做以下幾件事情 :(1)切分開發時的功能優先序;(2)將功能切分為前後端開發卡片,並針對每個卡片,列出 SPEC內容、User story和該卡片的驗收標準。
確認回覆內容是否是你想要的,若是要修改,可透過對話請他調整。在這邊我也先同樣默認 OK 並請他產出。
這邊我有疑惑他的人力安排,所以有與他對話,詢問抓的內容是以多少人力來算。
Github Copilot 的初始內容給了「購物網站APP開發優先序與開發卡片規劃 初 - Co」與「購物網站APP詳細開發卡片規劃 初 - Co」。
這邊可以看到他有給甘特圖,並且對各功能的一些細項功能有作時程規劃,這對我們要抓里程碑也是一個很好的參考。
由於兩個檔案不好閱讀,最後我請他將兩份檔案整合起來,內容結果可以參閱:購物網站APP完整開發規劃與卡片。
在這邊他有提供一些測試策略、CICD 以及開發規範,但這個如果不需要,也是可以透過對話將它拿掉。
整體來說,我還是覺得他提供內容是讓我覺得蠻滿意的,但是他的卡片開的有點大,但這其實都可以透過進一步的和 AI Agent 對話來去達到更細的卡片切分,有了這個好用的工具,至少我們不用所有東西從頭發想,可以透過 AI Agent 提供的內容再下去作優化,這對於開卡片有很大的幫忙。
而且,當Sprint Planning 前能預先處理了優先序、卡片拆分和驗收標準後,會議上的討論內容就從「從零開始規劃」變成了「團隊共同校準和確認」 。
我們不不用再花費很多時間在從零開始討論該做什麼、驗收條件是什麼 ,而是可以專注於討論如何做得更好 。這能讓會議變得更高效,避免無意義的會議時間損耗團隊的開發量能。
Moon: 黛西,這簡直是解放!以後我的規劃會議前的前置作業可以節省了大量時間,而會議時也能把時間花在技術討論和團隊共識上了,我終於可以不再是無聊的卡片撰寫員了!
黛西: 沒錯!當我們把這些重複性、發想性的工作交給 AI Agent,就能把專業能力發揮在更高階的判斷上!